import BOOK.Booklist;
import USRE.AdminUser;
import USRE.NormalUser;
import USRE.User;

import java.util.Scanner;

public class Main {
    //因为AdminUser和NormalUser的父类都是User，所以可以使用向上转型来作为返回值类型
    public static User Login(){
        System.out.println("请输入你的姓名：");
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        System.out.println("请输入你的身份：1->管理员；2->普通用户");
        int choice = scanner.nextInt();
        if (choice == 1){
            return new AdminUser(name);//调用“管理员”的构造方法
        }else {
            return new NormalUser(name);//调用“普通用户” 的构造方法
        }
    }
    public static void main(String[] args) {
        Booklist booklist = new Booklist();
        User user = Login();
        while (true) {
            int choice = user.menu();//接收返回值
            //此时无法调用menu方法，因为此时user中还没有menu方法（这个方法此时是属于user的子类的）
            user.doWork(choice,booklist);
        }
    }
}
